package main

import (
	"fmt"
)

func main() {
	Example1()
}

// Find获取一个切片并在其中查找元素。如果找到它，它将返回它的索引，否则它将返回-1和一个错误的bool。
func Find(slice []interface{}, val interface{}) (int, bool) {
	for i, item := range slice {
		if item == val {
			return i, true
		}
	}
	return -1, false
}

func Example1() {
	// 创建一个包含字符串的切片
	slice := []string{"apple", "banana", "cherry", "date", "elderberry"}

	// 查找"banana"在切片中的索引
	type M = []interface{} // 定义一个别名M，类型为[]interface{}
	index, found := Find(M(slice), "banana")

	if found {
		fmt.Printf("找到元素，索引为：%d\n", index)
	} else {
		fmt.Println("未找到元素")
	}
}
